1. Field of the Invention
The present invention relates to processing of digital images. More particularly, the present invention relates to methods for suppressing row and column patterns in a digital image.
2. The Prior Art
Structured noise in digital images can have the form of row and column patterns, typically produced in a digital camera due to the sensor design (e.g., signal readout architecture) or various other patterns introduced to the image via image processing.
In digital cameras, column-correlated gain and offset mismatches, due to slight mismatches in column readout circuits, are common. If these mismatches are large enough, they may show up as high-frequency column patterns in the images. The column-correlated mismatches become more pronounced when using a column-parallel readout scheme, using one analog-to-digital converter (ADC) per column. While in most cases the column-correlated mismatches can be calibrated out (this type of mismatch is usually in the form of an offset, and can be calibrated out either by dedicated on-chip circuitry or by computing column offsets from a dark frame in calibration), in some cases these mismatches are not easily modeled (such as when a nonlinear ADC transfer function is used, which results in errors that are not purely offset; this kind of error is signal intensity dependent). In such cases, column offset calibration alone will not remove the column-correlated mismatches completely, and high-frequency column patterns may still remain visible in processed images.
In addition to column patterns, row patterns can also create visible artifacts in digital images. Although the source of row patterns is different from column patterns (row noise is usually a result of sampling of the power supply noise onto the pixel output), their visibility in the images can still be important, especially under low-light conditions. Similar to column patterns, row patterns usually cannot be fully removed by standard approaches, resulting in the presence of high-frequency row patterns in processed images.
In order for column or row patterns to be visible, average intensity of a given column or row needs to stand out with respect to the neighboring columns or rows, respectively. In this proposed method, the intensity of each column/row is replaced by the average of its neighbors. This results in the smoothing of the column/row patterns, which makes them less visible in the processed image.
The most common way of suppressing row and column noise in a digital image is applying a local smoothing technique. These techniques usually operate directly on the pixel values by defining a moving window and estimating the pixel value in the central window position using the pixel values located inside the window. The supporting window can have an arbitrary shape, ranging from one-dimensional to various two-dimensional windows. Unfortunately, these techniques often produce unsatisfactory results as they cannot fully remove structured noise and also tend to suppress the desired image features such as edges and image details. Therefore, a different approach is needed.